package org.lanqiao.tjut.testpractice;

import java.util.Scanner;

public class TestDriver0625 {
	public static void main(String[] args){
		//成绩表示
		System.out.println("---成绩等级表示，输入-1结束程序---");
		Test01();
		
		//质因数分解
		System.out.println("---质因数分解---");
		Test02();
	}
	/**
	 * 成绩等级表示:
	 * 学习成绩100> =90分的同学用A表示
	 * 60-89分之间的用B表示
	 * 60分以下的用C表示。 
	 * 
	 */
	public static void Test01(){
		while(true){
		Scanner input = new Scanner(System.in);
		System.out.print("请输入分数：");
		System.out.println();
		int Score = input.nextInt();
		if(100>=Score && Score>=90){
			System.out.println("该成绩对应等级为A!");
		}else if(Score<90 && Score>=60){
			System.out.println("该成绩对应等级为B!");
		}else if(Score<60 && Score>=0){
			System.out.println("该成绩对应等级为C!");
		}else{
			System.out.println("成绩输入不合法！");
			if(Score == -1){
				break;
			}
		}
	}
	}
	
	/**
	 * 分解质因数
	 * 程序分析：对n进行分解质因数，应先找到一个最小的质数k，然后按下述步骤完成：   
	 *(1)如果这个质数恰等于n，则说明分解质因数的过程已经结束，打印出即可。   
	 *(2)如果n <> k，但n能被k整除，则应打印出k的值，并用n除以k的商,作为新的正整数你n,重复执行第一步。   
	 *(3)如果n不能被k整除，则用k+1作为k的值,重复执行第一步。
	 */
	
	public static void Test02(){
		Scanner input = new Scanner(System.in);
		System.out.println("请输入一个数：");
		int n = input.nextInt();
		int[] arr = new int[n];
		for (int i = 2; i <= n; i++) {
			boolean b = false;
			for (int j = 2; j <= i; j++) {
				// 能被j整除且j！=n，则这个数不是素数
				if (i % j == 0 && j != i) {
					b = false;
					break;
				} else {
					b = true;

				}
			}
			if (b == true) {
				//System.out.print(" " + i);

			//}
			for (int k = 0; k < n; k++) {
				arr[k] = i;
			}
		System.out.print(" " + arr[n - 1]);

		}}
		
	}
}
